// home-service

const Service = require('egg').Service;
const Moment = require('moment');
Moment.locale('zh-cn');
// let now = Moment().format('YYYY-MM-DD HH:mm:ss'); /*格式化时间*/
// console.log('时间：' + now)


class HomeService extends Service {
  // 默认不需要提供构造函数。
  constructor(ctx) {
    super(ctx); // 如果需要在构造函数做一些处理， 一定要有这句话， 才能保证后面 `this.ctx` 的使用。
    // 就可以直接通过 this.ctx 获取 ctx 了
    // 还可以直接通过 this.app 获取 app 了

    console.log('contructor . GET : ' + ctx.params.id + ' | ' + ctx.params.name);
  }

  async findUser() {
    const { ctx } = this;

    // return {
    //   name: 'name',
    //   age: 12,
    // };
    // 假如 我们拿到用户 id 从数据库获取用户详细信息
    // const user = await this.app.mysql.get('wp_users', { id: 1 });  //查询一条记录
    const user = await this.app.mysql.select('wp_users', {
      where: { user_nicename: 'test' }, // WHERE 条件,
      columns: [ 'id', 'user_nicename', 'user_registered', 'user_email' ], // 要查询的表字段
      orders: [
        [ 'user_registered', 'desc' ],
        [ 'id', 'desc' ],
      ], // 排序方式
      limit: 10, // 返回数据量
      offset: 0, // 数据偏移量
    });
    return user;
  }


  async addUser() {
    const random = Math.round(Math.random(100) * 100);
    const now = Moment().format('YYYY-MM-DD HH:mm:ss'); /* 格式化时间*/
    // console.log('时间：' + now)
    const insertData = {
      user_login: 'test_' + random,
      user_pass: '$P$B9jnzdbxXOW6izCBJJ0zJ3Mqmxsed60',
      user_nicename: 'test',
      user_email: 'test@163.com',
      user_url: 'http://www.wp.vip',
      user_activation_key: '',
      user_status: 0,
      user_registered: now,
      display_name: 'test_' + random,
    };

    const result = await this.app.mysql.insert('wp_users', insertData); // 在 wp_users 表中
    return result;
  }


}

// 别忘了暴露出去
module.exports = HomeService;
